perm filename NSF.HA[DOC,TOB]1 blob sn#051540 filedate 1973-06-27 generic text, type T, neo UTF8
00100	THE ASSEMBLY SYSTEM
00105	
00110	An assembly system  is  not  just  a  programmable  assembly  device,
00115	important  as  that  is  at this stage of evolution.  From an overall
00120	standpoint, the biggest problems in  automated  assembly  are  system
00125	problems.  We  suggest three main facilities of an assembly system that
00130	relate to the total factory automation system: a) design of  products
00135	for  automated  assembly;  as described above, many assembly problems
00140	can be simplified enormously by design especially for  the  abilities
00145	of automated assembly systems. b) programming of assembly devices for
00150	new  tasks.   c)  monitoring  of  production;  this   is   the   most
00155	straightforward of the three functions.
00160	
00165	Our  experiments  in assembly lead us to suggest a form for a general
00170	assembly system, a mini and maxi system.  The mini system is a  small
00175	configuration  minicomputer-based  assembly  station (possibly stand
00180	alone) tailored to a task by a choice of arm and vision hardware  and
00185	software  modules.  The maxi system is to reside in a factory central
00190	computer   which   handles   scheduling   of    resources,    design,
00195	communication,  routing  and tracking of parts, etc.  The maxi system
00200	interfaces  the  assembly  station  with  the  central  computer  and
00205	provides  the capability for convenient design for automated assembly
00210	and convenient reprogramming of the assembly station for  new  tasks.
00215	The  maxi system takes advantage of design information in the central
00220	system  and  large  file  system,   graphics,   and   problem-solving
00225	languages.  Its use is shared among many machines since reprogramming
00230	is done at intervals.  The mini system is low cost, yet its  behavior
00235	can  be  pre-planned  and  optimized  by  the  maxi system, utilizing
00240	intelligent and efficient arm planning.
00245	
00250	The  essential  parts  of  the  system  are:      a)   representation
00255	(descriptors)  of  shape  and assembly operations.   We have advanced
00260	work with representation and description of complex  shapes  [].   b)
00265	Interactive   systems  including  graphics.      Here  too,  we  have
00270	considerable experience and useful existing techniques  and  systems,
00275	including   the  interfacing  of  our  representation  with  graphics
00280	systems.   c) Strategies which  allow  generality.     This  work  is
00285	beginning. d) Description of the assembly process in terms of program
00290	elements.  Some work in this direction has been done with development
00295	of the hand language HAL here.  We will extend this system to include
00300	vision primitives. The extent of the inclusion of assembly operations
00305	in  the  language  depends upon sophistication of shape and operation
00310	descriptors.
00315	
00320	
00325	The  most  obvious  form  of  programming  robots is that in use with
00330	current industrial robots, "learning by doing".  The robot is led  to
00335	end  points  of a trajectory or along a path by an operator.   We are
00340	able to do  that  already;  positions  for  the  pump  assembly  were
00345	specified  in  that  way.    The  process could be improved by better
00350	teleoperator control, for example the resolved rate control system at
00355	MIT.
00360	
00365	Those  techniques  are  quite limited, however.   They are limited to
00370	tasks with  positional  control  only.      Where  force  control  is
00375	necessary,  the  control  program  must  know  in what way to control
00380	forces, i.e.  what forces to  exert  or  null  along  what  direction
00385	vector.     For  example,  in inserting a rod into a hole, transverse
00390	forces should be nulled.  Such tasks require specifying a  trajectory
00395	with  additional  symbolic  force  control information.     Since arm
00400	control will be primarily based on minicomputers in  new  designs,  a
00405	natural  mode  to  accomplish  this partially symbolic programming is
00410	with an interactive program, which can be small.
00415	
00420	For any task involving a sequence of such operations, the interactive
00425	system  allows  the  operator to choose from a menu of operations and
00430	proceed step by step to assemble a sequence of these operations which
00435	have  been  verified.  Checking the success of these operations could
00440	use simulation if necessary to avoid tying up a  production  machine.
00445	Useful  modules  like  inserting  a screw would be saved as macros so
00450	that  subsequent  programming  sessions  would  be  much  simplified,
00455	dealing with combinations of such high level modules.  The macros can
00460	have arguments, so that one basic operation can be used in a  variety
00465	of   situations,   and   further,   our   software  allows  modifying
00470	trajectories  so  that  a  planned  trajectory  allows   considerable
00475	variation  in  execution,  without  replanning.  Ail these facilities
00480	exist. We have built and used such  an  interactive  system  for  the
00485	hand.
00490	
00495	Current  work  is  involved  with  extending  the  hand  progrmamming
00500	language to include more than one arm.  Problems  of  synchronization
00505	and coordinated motion will be provided for.
00510	
00515	Later  this  work  will become the output language for a higher level
00520	processor, in which tasks such as inserting, testing and mating  will
00525	be expressible in a simple and direct manner.
00530	
00535	As  visual  feedback  is included, the human operator must be able to
00540	interact with the visual system through a graphics console.     These
00545	are  becoming  inexpensive,  but  it is a resources shared among many
00550	assembly stations.   Unlike the hand language, no interactive  visual
00555	system  exists. We must emphasize that development of the language is
00560	not primarily a language effort, nor is  it  a  statistical  learning
00565	system.     Rather,  we plan that it resemble the hand language, i.e.
00570	embedding  the  useful  set  of  visual  operators  in  a  convenient
00575	interactive  system.     During  the  early stages of the effort, the
00580	language will be at a low  level,  with  macros,  much  as  the  hand
00585	language  is  now.    That early emphasis will be on building a trial
00590	system based on a lot of experiments done as special cases.  This can
00595	be regarded as an extended learning by doing.  Meanwhile, our present
00600	efforts on representation of objects will evolve to a state at  which
00605	the modelling of objects is integrated with our graphics capabilities
00610	to begin to automate some of the programming of feedback  operations,
00615	that  is  to allow programming at a higher level. It is at this level
00620	that a non-technical worker might accomplsh the programming of visual
00625	feedback tasks.
00630	
00635	We will meanwhile work on development of strategies for assembly. The
00640	goal is to produce a language at about the level  of  an  instruction
00645	manual:    put the cover (part a) on the opening of part b. At such a
00650	level, the system begins to be applicable to design  for  automation.
00655	The  designer can use the system to simulate the assembly process and
00660	modify designs which are marginal for automatic assembly.    He  will
00665	have  an assembly program as part of the design.   Thus, a large part
00670	of programming for assembly may in fact be done by designers.
00675	
00680	Several factors may decrease the burden  of  programming  robots  for
00685	production line personnel:
00690		libraries of operations-fastening, inserting, etc.
00695	
00700		interactive systems which do bookkeeping and
00705		prompt the human operator- an extended sort
00710		of learning by doing
00715	
00720		programming by designers.
00725	
00730	The process of building the APT-like language for assembly should  be
00735	based on design, not on just random accretion, and should be based on
00740	computer science inputs, to maintain modularity and avoid  forseeable
00745	and  unnecessary limitations on syntax and implementation.  It should
00750	be based on a wider perspective than just one industry or the  market
00755	strategy  of a dominant computer company.  With APT, the language was
00760	developed with air frames in mind,  and  has  been  clumsy  in  other
00765	applications.   Further, the development should be based on extensive
00770	experience, which can be obtained sooner in  a  research  environment
00775	where a variety of tasks and skills can be investigated.
00780